package com.mytijian.openapi.adapter.dianping.consts;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 大众点评
 * 
 * @author clozz
 */
public interface DzopenConsts {
	String AppName = "dz";

	Integer SuccessCode = 200;

	Map<String, String> session = new HashMap<String, String>() {
		private static final long serialVersionUID = -1097000848337540335L;

		{
			put("1", "8117467918188e07e2224b21c63e1ad432b0e0f7");
			put("5", "f66812128ea361831945c398777b3671cc3aefe6");
		}
	};

	interface Apis {
		String Bookresultcallback = "https://openapi.dianping.com/router/book/bookresultcallback";
		String Consume = "http://openapi.dianping.com/router/book/isvconsume";
		String Modifyresultcallback = "http://openapi.dianping.com/router/book/booktimemodifynotify";
		String AuthToken = "https://openapi.dianping.com/router/oauth/token";
	}

	interface BookStatus {
		int Successed = 2;
		int Failed = 3;
	}

	interface OrderConsumeStatus {

		/**
		 * 订单状态正常
		 */
		int normal = 1;
		/**
		 * 订单已核销
		 */
		int consumed = 2;
		/**
		 * 订单已撤销
		 */
		int canceled = 3;
	}

	interface SignFields {

		List<String> startbook = new ArrayList<String>() {
			{
				add("app_key");
				add("timestamp");
				add("format");
				add("v");
				add("sign_method");

				add("app_shop_id");
				add("order_id");
				add("app_product_id");
				add("product_name");
				add("begintime");
				add("duration");
				add("endtime");
				add("products");
				add("user_name");
				add("user_gender");
				add("mobile");
				add("amount");
				add("order_shoppromo_details");
				add("quantity");
				add("comment");
			}
		};

		List<String> cancelbook = new ArrayList<String>() {
			{
				add("app_key");
				add("timestamp");
				add("format");
				add("v");
				add("sign_method");

				add("app_shop_id");
				add("order_id");
				add("reason");
				add("audit_channel");
				add("cancel_type");
			}
		};
		
		List<String> modifybooktime = new ArrayList<String>() {
			{
				add("app_key");
				add("timestamp");
				add("format");
				add("v");
				add("sign_method");

				add("order_id");
				add("begin_time");
				add("app_shop_id");
			}
		};
		
		List<String> cosumestatus = new ArrayList<String>() {
			{
				add("app_key");
				add("timestamp");
				add("format");
				add("v");
				add("sign_method");

				add("order_id");
			}
		};
		
		List<String> remaincountbytime = new ArrayList<String>() {
			{
				add("app_key");
				add("timestamp");
				add("format");
				add("v");
				add("sign_method");

				add("app_shop_id");
				add("bookdate");
				add("days");
				add("durations");
			}
		};
		
		List<String> oauthcallback =new ArrayList<String>() {
			{
				add("app_key");
				add("sign_method");
				add("callback_session");
				add("app_secret");
			}
		};

	}
}
